let express = require('express');
let router = express.Router();
let allsDao = require("../dao/AllsDao");

let pager = require("../util/PagerHelper")

/* GET users listing. */
router.all('/list.do', function(req, res, next) {
    pager.href ="/api/store/list.do";
    let where =` where storeId = (select id from storeadmins WHERE account = 'admin') `;
    let and = "";
    if (req.body) {
        console.log("req.body", req.body);
        if (req.body.goodname) {
            if (where.trim().length === 0) {
                where += " where ";
            }
            where += ` goodname like '%${req.body.goodname}%' `;
        }
        console.log("where:"+where);
    }
    allsDao.getCount(where,and).then(count => {
        pager.setCount(count);
        return allsDao.findByPage(where,and);
    }).then(data => {
        pager.data = data;
        res.json({
            code:200, //结果编码,200表示成功，404表示未找到
            data:pager
        });
    }).catch(err => next(err));
});

router.get("/edit.do", (req, res, next) => {
    let id = req.query.id;
    console.log("id:"+id);
    if (id) {
        allsDao.findById(id).then(editObj => {
            if (editObj) {
                res.json({
                    code: 200,
                    data: editObj
                });
            } else {
                res.json({
                    code: 404,
                    msg: "没有找到记录！"
                });
            }
        }).catch(err => next(err));
    } else {
        res.json({
            code: 410,
            msg: "没有id！"
        });
    }
});

//保存
router.post("/save.do", (req, res, next) => {
    let newObj = Object.assign({}, req.body);
    //区分添加还是编辑
    if (newObj.id) {
        //编辑
        allsDao.update(newObj, newObj.id).then(data => res.json({
            code: 200,
            msg: "修改成功"
        })).catch(err => next(err));
    } else {
        //添加
        newObj.id = 0;//id是自动增长，必须是0值
        allsDao.insert(newObj).then(data => res.json({
            code: 200,
            msg: "添加成功"
        })).catch(err => next(err));
    }
});

router.get("/del.do",((req,res,next) =>{
    let table = "goods"
    if(req.query.id){
        console.log("req.query.id",req.query.id)
        allsDao.deleteById(table, req.query.id).then(data => {
            res.json({
                code:200,
                msg: "下架成功"
            })
        }).catch(err => next(err));
    } else {
        res.json({
            code:404,
            msg: "没有传id值"
        })
    }
}));

router.get("/delBatch.do",(req,res,next) =>{
    let idsStr = req.query.ids;
    let table = "goods"
    console.log(idsStr);
    let ids;
    if (Array.isArray(idsStr)){
        ids = idsStr;
    } else {
        ids = idsStr.split(",");
    }
    allsDao.deleteByIds(table, ids).then(data => res.json({
        code: 200,
        msg: "删除成功"
    })).catch(err => next(err));
});

/*
获取单条数据
 */
router.get("/getone.do", (req, res, next) => {
    let id = req.query.id;
    allsDao.findById(id).then(data => {
        console.log(data)
        res.json({
            code: 200,
            data
        })
    }).catch(err => next(err));
});



module.exports = router;
